At present, network environments comprising hardware platform machines execute software applications to perform various network functions, such as data management and storage. After the initial installation, a software application may require an update or revision in order to remedy any existing software errors or to increase, update, or otherwise change the hardware platform's performance. Thus, an updated version of the installed software application must be generated by the software provider and deployed to hardware platforms on a regular basis. Even though a new revision of software is required, there may be a need for multiple versions of the revision. That is, a “general” version of the software may need to be uniquely configured for each type of hardware platform that utilizes the particular software application. More specifically, each type of hardware platform running in the network environment may be characterized as a certain “platform class” depending on any number factors and exhibited characteristics, such as memory size or processing power.
In order to accommodate the various classes of hardware platforms, a software provider may produce software updates that are customized for each hardware platform class. For example, a typical software update is embodied as a software package, which may include a number of files, such as updated software drivers and a software description file. The software description file is a text file that includes, among other things, the revision levels and attributes that characterize the updated software drivers. Namely, a hardware platform utilizes the software description file to manage the overall installation process of the software package. As a result, the software description must also be uniquely generated in order to properly reflect each of the customized software packages.
Although this approach of customizing software packages and software description files addresses the needs of the numerous types of hardware platforms known to be running the software provider's product, it may not be the most economically feasible and practical solution for installing software updates. In addition to the significant amount of resources expended, which are associated with programming and compiling each software update, each software description file must be manually updated to reflect the attributes of the software packages.
Accordingly, there exists a need for methods, systems, and computer program products for dynamically modifying a software package description.